Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(tee-key-preexec): support for Solidity-compatible pubkey in report_data #228

Closed
wants to merge 2 commits into from

Conversation

pbeza
Copy link
Contributor

@pbeza pbeza commented Dec 20, 2024

This PR is part of the effort to implement on-chain TEE proof verification. This PR goes hand in hand with matter-labs/zksync-era#3414.

@pbeza pbeza requested a review from a team as a code owner December 20, 2024 11:21
@pbeza pbeza force-pushed the pab/solidity-compatible-pubkey-in-report-data branch 3 times, most recently from c66fc0e to 584d371 Compare December 20, 2024 12:20
Copy link
Contributor

@haraldh haraldh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

run taplo fmt or sort cargo deps alphabetically by hand

@pbeza pbeza force-pushed the pab/solidity-compatible-pubkey-in-report-data branch 3 times, most recently from 959c076 to 6b51717 Compare December 20, 2024 22:16
pbeza added a commit to matter-labs/zksync-era that referenced this pull request Dec 30, 2024
Signatures produced by the TEE Prover are now compatible with the
on-chain verifier that uses the `ecrecover` precompile.

Until now, we've been using _non-recoverable_ signatures in the TEE
prover with a compressed (ECDSA) public key in each attestation -- it
was compressed because there are only 64 bytes available in the report
attestation quote. That worked fine for off-chain proof verification,
but for on-chain verification, it's better to use the Ethereum address
derived from the public key so we can call ecrecover in Solidity to
verify the signature.

This PR goes hand in hand with matter-labs/teepot#228
pbeza added a commit to matter-labs/zksync-era that referenced this pull request Dec 30, 2024
Signatures produced by the TEE Prover are now compatible with the
on-chain verifier that uses the `ecrecover` precompile.

Until now, we've been using _non-recoverable_ signatures in the TEE
prover with a compressed ECDSA public key in each attestation -- it was
compressed because there are only 64 bytes available in the report
attestation quote. That worked fine for off-chain proof verification,
but for on-chain verification, it's better to use the Ethereum address
derived from the public key so we can call ecrecover in Solidity to
verify the signature.

This PR goes hand in hand with matter-labs/teepot#228
pbeza added a commit to matter-labs/zksync-era that referenced this pull request Dec 30, 2024
Signatures produced by the TEE Prover are now compatible with the
on-chain verifier that uses the `ecrecover` precompile.

Until now, we've been using _non-recoverable_ signatures in the TEE
prover with a compressed ECDSA public key in each attestation -- it was
compressed because there are only 64 bytes available in the report
attestation quote. That worked fine for off-chain proof verification,
but for on-chain verification, it's better to use the Ethereum address
derived from the public key so we can call ecrecover in Solidity to
verify the signature.

This PR goes hand in hand with matter-labs/teepot#228
pbeza added a commit to matter-labs/zksync-era that referenced this pull request Dec 30, 2024
Signatures produced by the TEE Prover are now compatible with the
on-chain verifier that uses the `ecrecover` precompile.

Until now, we've been using _non-recoverable_ signatures in the TEE
prover with a compressed ECDSA public key in each attestation -- it was
compressed because there are only 64 bytes available in the report
attestation quote. That worked fine for off-chain proof verification,
but for on-chain verification, it's better to use the Ethereum address
derived from the public key so we can call ecrecover in Solidity to
verify the signature.

This PR goes hand in hand with matter-labs/teepot#228
@pbeza pbeza requested a review from haraldh December 30, 2024 17:38
@pbeza pbeza force-pushed the pab/solidity-compatible-pubkey-in-report-data branch from 6b51717 to e95728f Compare December 30, 2024 17:50
pbeza added a commit to matter-labs/zksync-era that referenced this pull request Dec 31, 2024
This PR is part of the effort to implement on-chain TEE proof
verification. Signatures produced by the TEE Prover are now compatible
with the on-chain verifier that uses the `ecrecover` precompile.

Until now, we've been using _non-recoverable_ signatures in the TEE
prover with a compressed ECDSA public key in each attestation -- it was
compressed because there are only 64 bytes available in the report
attestation quote. That worked fine for off-chain proof verification,
but for on-chain verification, it's better to use the Ethereum address
derived from the public key so we can call ecrecover in Solidity to
verify the signature.

This PR goes hand in hand with matter-labs/teepot#228
…report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with matter-labs/zksync-era#3414.
@pbeza pbeza force-pushed the pab/solidity-compatible-pubkey-in-report-data branch from e95728f to a9b89ef Compare December 31, 2024 10:11
pbeza added a commit that referenced this pull request Dec 31, 2024
…in report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with:
- matter-labs/zksync-era#3414
- #228
pbeza added a commit that referenced this pull request Dec 31, 2024
…in report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with:
- matter-labs/zksync-era#3414
- #228
pbeza added a commit that referenced this pull request Dec 31, 2024
…in report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with:
- matter-labs/zksync-era#3414
- #228
pbeza added a commit that referenced this pull request Jan 2, 2025
…in report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with:
- matter-labs/zksync-era#3414
- #228
pbeza added a commit that referenced this pull request Jan 2, 2025
…in report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with:
- matter-labs/zksync-era#3414
- #228
pbeza added a commit that referenced this pull request Jan 3, 2025
…in report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with:
- matter-labs/zksync-era#3414
- #228
pbeza added a commit that referenced this pull request Jan 3, 2025
…in report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with:
- matter-labs/zksync-era#3414
- #228
pbeza added a commit that referenced this pull request Jan 3, 2025
…in report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with:
- matter-labs/zksync-era#3414
- #228
pbeza added a commit that referenced this pull request Jan 6, 2025
…in report_data

This PR is part of the effort to implement on-chain TEE proof
verification. This PR goes hand in hand with:
- matter-labs/zksync-era#3414
- #228
@pbeza
Copy link
Contributor Author

pbeza commented Jan 15, 2025

Closing in favor of #251.

@pbeza pbeza closed this Jan 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants